package com.seckill.user.service;

import com.seckill.api.dto.user.LoginFormDTO;
import com.seckill.api.dto.user.UserDTO;
import com.seckill.common.domain.dto.LoginUserDTO;
import com.seckill.user.domain.po.User;
import com.baomidou.mybatisplus.extension.service.IService;
import com.seckill.user.domain.query.UserQuery;

import java.util.List;

/**
 * <p>
 * 用户表 服务类
 * </p>
 *
 * @author zsc
 * @since 2025-05-14
 */
public interface IUserService extends IService<User> {

    Long exchangeUserIdWithPhone(String phone);

    Integer queryUserType(Long id);

    LoginUserDTO queryUserDetail(LoginFormDTO loginDTO);

    List<UserDTO> queryUserByIds(Iterable<Long> ids);

    void registerUser(UserQuery userQuery);

    void updateUser(Long userId, UserQuery userQuery);

    void deductMoney(String pw, Integer amount);

    void deductsecMoney(Integer amount);
}
